// 抽象类 基类
// 抽线类中的方法只能描述不能实现
abstract class Vue {
    name: string | undefined
    constructor(name?: string) {
        this.name = name
    }
    getName() {
        return this.name
    }
    abstract init(name: string): void
}

class React extends Vue {
    constructor() {
        super()
    }
    init(name: string): void {

    }
    setName(name: string) {
        this.name = name
    }
}

const react = new React()
react.setName('react')
console.log(react.getName())